Concurrent B-trees with Lock-free Techniques

نویسندگان

  • Afroza Sultana
  • Helen A. Cameron
  • Peter C. J. Graham
چکیده

B-trees and their variants are efficient data structures for finding records in a large collection (e.g., databases). The efficiency of B-trees increases when a number of users can manipulate the tree simultaneously. Many algorithms have been developed over the last three decades to achieve both concurrency and consistency in B-trees. However, current lock-based concurrency-control techniques limit concurrency. Moreover, lock-based B-trees suffer from certain negative scheduling anomalies, such as deadlock, convoying and priority inversion. Lock-free concurrency-control techniques using, for example, Compare And Swap (CAS) can provide improved concurrent access to data structures including B-trees and other search structures. Besides this, correctly designed lock-free techniques prevent deadlock, convoying and priority inversion. Considering the advantages of lock-free techniques for other concurrent data structures, we develop a lock-free B-tree to support high performance concurrent in-memory searching in a Non Uniform Memory Access (NUMA) parallel computing environment. The use and parallelization of B-trees have both been widely explored in the past—primarily for application to database implementation and, hence, disk-based operations. Moving B-trees into memory for use in new online searching applications, however, fundamentally changes the characteristics of managing them and will allow us to effectively exploit the use of lock-free techniques, something that has previously not been applicable to B-trees.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Techniques for Constructing Efficient Lock-free Data Structures

Techniques for Constructing Efficient Lock-free Data Structures Trevor Brown Doctor of Philosophy Graduate Department of Computer Science University of Toronto 2017 Building a library of concurrent data structures is an essential way to simplify the difficult task of developing concurrent software. Lock-free data structures, in which processes can help one another to complete operations, offer ...

متن کامل

Lock-Free Red-Black Trees Using CAS

The negative side-effects of using lock-based synchronization mechanisms are well known and include unexpected scheduling anomalies such as priority inversion and convoying as well as unnecessary synchronization overhead and the potential for deadlock. Despite these drawbacks, the use of lock-free techniques has not gained widespread acceptance. The reasons for this lack of acceptance include t...

متن کامل

A Template for Implementing Fast Lock-free Trees Using HTM

Algorithms that use hardware transactional memory (HTM) must provide a software-only fallback path to guarantee progress. The design of the fallback path can have a profound impact on performance. If the fallback path is allowed to run concurrently with hardware transactions, then hardware transactions must be instrumented, adding significant overhead. Otherwise, hardware transactions must wait...

متن کامل

Lock-Free Techniques for Concurrent Access to Shared Objects

Concurrent access to shared data in preemptive multi-tasks environment and in multi-processors architecture have been subject of many works. Proposed solutions are commonly based on semaphores which have several drawbacks. For many cases, lock-free techniques constitute an alternate solution and avoid the disadvantages of semaphore based techniques. We present the principle of these lock-free t...

متن کامل

Architectural Transactional Memory: Support for Lock-Free Data Structures

A shared data structure is lock-free if its operations do not require mutual exclusion. If one process is interrupted in the middle of an operation, other processes will not be prevented from operating on that object. In highly concurrent systems, lock-free data structures avoid common problems associated with conventional locking techniques, including priority inversion, convoying, and difficu...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2011